perm filename UPDATE.IRC[IRC,LCS]1 blob
sn#496776 filedate 1980-02-14 generic text, type T, neo UTF8
MS.LCS[MUS,DOC] ************
---CODE 4 31/JAN/80
ADD 1000 MORE FOR THIN DOUBLE BAR. 2000,3000,4000 =RPTS.
REPT. BARS NUM OF | 0 | 0 | | | |
STAVES UP | | | | | |
+2000=DOTS TO RIGHT | | | | | |
+3000=DOTS RT & LFT | | | | | |
+4000=DOTS TO LEFT | | | | | |
MS *************
---MS.F4 15/JAN/80
CCC 24/1/80 590 IF(I2.NE.LDD)GO TO 600
590 IF(I1.EQ.LAA)JA=190
C 'AD'just stems to beams. 'A'=ADJUST LFT-RT POS. AFTER 'SET' COMMAND
1800 IF(REDIT.NE.55.)REDIT=0
C NEEDED FOR 'S'ET, THEN 'A'LIGNE ROUTINE
---NOTBMS.F4
C clefs = 3xyz.0 z=0=treble, =1=bass, =2=alto, =3=tenor, neg.=invis.
C use TRE,BAS,ALT,TEN for clefs with no change to note levels.(4,5,6,7)
23 CLF=ABS(X)-3000.
IF(CLF.LT.4)GO TO 223
C NOW CLEFS THAT DON'T INFLUENCE NOTE LEVELS. (4,5,6,7)
CLF=CLF-4
GO TO 323
223 JCLF=CLF
IF(X.LT.0)GO TO 871
C IS THE CLEF INVISIBLE?
323 R5=CLF
---LOOP.FAI JAN/80
CAML [5.0] ;FOR ONLY SINGLE CODE # ON ALL LINES. CAMGE [5.0]
JRST E144 ; " ARE WE IN BOUNDS?
JUMPE 5,.+3 ; IF 0, ANY CODE NUM. WILL DO
CAME 5,XRN(1) ; IS IT THE RIGHT CODE NUM?
JRST E144 ; WRONG CODE NUM.
CAMG 4,[7.0] ; STAFF NUM .GT. 7?
CAMN 4,XRN+1(1) ; OR IS IT SPECIFICALLY THE RIGHT STAFF NUM?
JRST E344
---SCAN.FAI
MOVE 02,[3001.0] ;BASS CLEF=3001
SCLEF: MOVE N,INP(ML) ;N=INP(ML+1) GET 3RD CHAR.
CAMN N,LBL ;IF(N.EQ.' '.OR.N.EQ.'/'.OR.N.EQ.';')GO TO SCLF
JRST SCLF ;IF 3RD CHAR IS SIGNIFICANT THEN SPECIAL CLEF
CAME N,LSL ; 4,5,6,7 = 0,1,2,3 BUT NO INFLUENCE ON NOTE LEVEL
CAMN N,ISEMI
JRST SCLF
FADR 2,[4.0]
AOS ML ;ML=ML+1
---ALPHA.FAI 15/JAN/80
BLANK: 0.70 ;NEW SIZE FOR BLANKS 1/80 (OLD SIZE WAS 1.0)
SPACER: 0 ;CALL SPACERR(J5,IFNT,RB,R)
MOVE @(16) ; J5 FOR NOW
CAILE =47
JRST SP10
CAIG =9
JRST SP117
CAIGE =36
JRST SP10
SP117: MOVSI 3,201400 ;[1.0] AC3 IS RSX
;************************ NEW BLANK SIZE *******************
CAIN =47 ;IS IT A BLANK?
MOVE 3,BLANK ;IT IS! NEW SIZE=.70, OLD SIZE=1.0 CHANGE IN DDT IF NEEDED.
---RHYTH.F4 29/JAN/80
70 DO 370 K=1,ITEM-1
CXX******** 1/80 70 DO 370 K=1,ITEM-IZ-1
C LOOKS ONLY AT THINGS BEFORE CURRENT INPUT.
POS=R(3,K-1)+4
C DON'T BACK OUT OF ARRAY
IF(K.EQ.1)POS=POS1
GO TO 76
75 POS=RPOS(1,J)
KZ=J+1
C FOUND SAME TYPE OF ITEM.
IF(K.EQ.1)GO TO 76
RA=R(3,K-1)
C GET POSITION OF PREVIOUS ITEM
IF(POS.LT.RA)POS=RA+3
C ARBITRARY POSITION FOR CLEF IF IT TRIES TO MATCH ONE SOMEWHERE ELSE.
76 R(3,K)=POS
---SLURZ.F4 23/JAN/80
C=RN(6+IS)-RN(3+IS)-C*RSTJ2
CATCHES VERY SHORT SLURS - OR 1ST NOTE HAS 2 OR MORE TAILS (PUTS SLUR ABOVE)
IF(AMOD(R(7,M),10.0).GE.2.)C=-1
---CODE4.FAI 30/JAN/80
IDIVI 02,1750
SKIPN .COMM.+=26 ;IF(J5.NE.0)GO TO RPTBAR
CAIG 2,1 ;IF(DBR.LT.2)GO TO RPTBAR
JRST RPTBAR
AOS .COMM.+=26 ;J5=1
CAIN 2,4 ;IF(DBR.EQ.4)DBR=1
MOVEI 2,1
MOVEM 2,DBR ;FOR REPEAT DBL.BAR WITH P5=0
RPTBAR: MOVEM 02,DBR ;P4=2000=DOTS ON RIGHT, =3000=BOTH SIDES
;=4000=DOTS ON LEFT
JUSTFY ****************** 1/FEB/80
C ADD A LITTLE SPACE IN FRONT OF DBL BAR.
IF(KX.GT.1)GO TO 229
IF(RL.LT.3)GO TO 25
C JUMP IF THIN DBL BAR. OLD DBL BAR HAS 1 IN P5.
CCC IF(KX.EQ.1.OR.KX.EQ.3)RD=RD+RD
229 IF(KX.NE.2)RD=RD+RD
C 2=DOTS TO RT. 1 OR 4=DOTS TO LFT. 3=DOTS ON BOTH SIDES.
C REPT BAR WITH DOTS TO LEFT. ADD SPACE IN FRONT OF IT.
RB=-RB/RBX
IF(KX.EQ.4)KX=0
129 IF(KX.GE.2)RB=RBZ*RB
PAGE **************
---PAGE.F4 18/JAN/80
COMMON /PX/KPN(400) /Q/Q(3500) /KBAR/KBAR(1027) /IRST/IRST
---PGSUB.F4 (FILEIN) 18/JAN/80
JP=JJ2+KPX
IF(JP.LE.400)GO TO 1211
TYPE 3211,JP
STOP
3211 FORMAT(' ARRAY OVERLOAD. KPN=',I3,'/400')
4211 FORMAT(' ARRAY OVERLOAD. Q=',I4,'/3500')
1211 JP=KQ+JPQ
IF(JP.LE.3500)GO TO 2211
TYPE 4211,JP
STOP
2211 IF(KPX.EQ.1)GO TO 140
---PTMOVE.F4 14/JAN/80
1 /IPG/IPG,JPG,BRACK(8),RSTNUM(8),RPSZ(8)
CALL JUSTFY(JPG-1,R,IR,KR,NP,RN,RPSZ,-1.0,R4,R5,R6,R8,R9)
C RPSZ HAS ADJUSTED SIZE FACTOR FOR EACH STAFF.
CCC CALL JUSTFY(JPG-1,R,IR,KR,NP,RN,RSTFAC,-1.0,R4,R5,R6,R8,R9)
---TRNSP.F4 (SUBROUTINE CUES) 4/FEB/80
RNN=RN(N+4)
IF(RNN.LT.100)RN(N+4)=RNN+100.
C MAKE ALL NOTES INTO MINIS AND PUT ON STAFF 0
44 RN(N+2)=0
IF(R.NE.3)GO TO 55
C IS IT A CODE 3? CHANGE NON-CLEFS TO CODE 33.
IF(RN(N+5).LT.6)GO TO 66
C JUMP FOR REAL CLEF
RN(N+1)=33
GO TO 55
66 RN(N+4)=100
C ALWAYS MINI-CLEF IN CUES.
55 IF(R.GT.2)GO TO 5
JJ=N+11-R*2.0
RN(JJ)=RN(JJ)/2.
C JJ=9 OR 7. CUT RHYTH VALS OF CUES 1/2 - SO THEY WILL OCCUPY LESS SPACE.
MP ************
---MPRNT.F4 15/JAN/80
X=X*2.54
CALL TYPFLT(X)
CALL TYPSTR(' CM. ')
---PLOT3.FAI 14/FEB/80
JRST PL1
MOVE 4,@(16) ;IF(X2.EQ.X1.AND.Y2.EQ.Y1)RETURN
MOVE 5,@1(16) ;AVOID DUPLICATE COORDS.
CAMN 4,X1
CAME 5,Y1
JRST DIFRNT
SKIPL @2(16) ;SKIP IF -3 IN PEN CODE
JRA 16,3(16) ;RETURN
DIFRNT: MOVEM 4,X1
MOVEM 5,Y1 ;SAVE X AND Y FOR NEXT TIME
AOS 7,LX ;L=L+1
BIGGET.FAI *********
EXTOUT: MOVEI 0,@0(16)
EXTIN: MOVEI 0,@0(16)